from pyecharts.charts import Bar, Timeline
from pyecharts.options import LabelOpts
from pyecharts.globals import ThemeType

bar1 = Bar()
bar1.add_xaxis(['中国', '美国', '英国'])
bar1.add_yaxis(series_name='2021中美英GDP',
               y_axis=[30, 20, 10],
               label_opts=LabelOpts(
                   position='right'
               ))
bar1.reversal_axis()

bar2 = Bar()
bar2.add_xaxis(['中国', '美国', '英国'])
bar2.add_yaxis(series_name='2022中美英GDP',
               y_axis=[80, 30, 20],
               label_opts=LabelOpts(
                   position='right'
               ))
bar2.reversal_axis()

bar3 = Bar()
bar3.add_xaxis(['中国', '美国', '英国'])
bar3.add_yaxis(series_name='2023中美英GDP',
               y_axis=[180, 50, 25],
               label_opts=LabelOpts(
                   position='right'
               ))
bar3.reversal_axis()

# 'theme'：设置柱状图的背景色
timeLine = Timeline({'theme':ThemeType.LIGHT})
timeLine.add(bar1, '2021GDP')
timeLine.add(bar2, '2022GDP')
timeLine.add(bar3, '2023GDP')

# 设置自动播放
timeLine.add_schema(
    # 设置时间节点之间自动播放的间隔时间，单位：ms
    play_interval=1000,
    # 是否在自动播放时，显示时间线
    is_timeline_show=True,
    # 是否自动播放
    is_auto_play=True,
    # 是否循环自动播放
    is_loop_play=True
)

timeLine.render("含有时间现的柱状图.html")
